home *** CD-ROM | disk | FTP | other *** search
Wrap
; ***************************************** ; * * ; * DragonDaemon-Installationsskript * ; * * ; * $VER: 1.2 (10.07.99) by J.Reinert * ; * * ; ***************************************** ; ************************************************************************* ; Definition der globalen Konstanten ; ************************************************************************* (set #liesmichtext "Lies_mich.TXT") ; Schlusswort (set #aiconname "DragonDaemonStart") ; Name Autostart-Icon (set #aiconsource "daemon.noinfo") ; Quellname Autostart-Icon (set #aicondest "SYS:WBStartup") ; Ziel für Autostart-Icon (set #doksource "Docs") ; Anleitungen (set #developersource "Entwickler") ; Entwickler-Infos (set #progssource "Programme") ; Programme (set #admmakrosrc "ADM") ; Schublade mit ADM-Makros (set #dfamakrosrc "DFA/DragonDial.dfa") ; Name des DFA-Makros ; ************************************************************************* ; Definition der deutschen Texte ; ************************************************************************* (set #askprgdirmsg "Bitte wählen Sie die 'DragonTools'-Schublade aus.") (set #askprgdirhelp (cat "Es ist sehr wichtig, dass Sie die Schublade auswählen, in der " "sich das konfigurierte Programm 'DragonTools' befindet. " "DragonDaemon verwendet die selbe Prefs-Datei wie DargonTools.\n\n" "Falls Sie eine ältere Version per Autostart-Icon starten ließen, " "wird der Pfad vermutlich schon stimmen" ) ) (set #askadmmakros (cat "Adress-Datenbank \"ADM\"\n" "----------------------\n\n" "Wenn Sie Ihre Adressen und Telefonnummern mit dem " "Programm 'ADM' verwalten, können Sie jetzt zwei ARexx-Makros " "installieren, welche Ihnen als Wahlhilfe dienen können. Das " "Kleinere der beiden ist sehr einfach gehalten. Das zweite Makro " "basiert auf dem Ersten und wurde von Volker Weber leicht erweitert.\n\n" "Möchten Sie die Makros installieren?" ) ) (set #askadmdialdirmsg (cat "in welche Schublade soll das Makro kopiert werden? (Es " "wird KEINE neue Schublade angelegt!)" ) ) (set #askadmdialdirhelp (cat "Wählen Sie am besten die 'ARexx'-Schublade von ADM oder " "eines der dort enthaltenen Unterverzeichnisse. Um das " "Makro nutzen zu können, müssen Sie es in ADM später noch " "in das 'Makros'-Menü eintragen." ) ) (set #askdfamakros (cat "Adress-Datenbank \"DFA\"\n" "----------------------\n\n" "Wenn Sie Ihre Adressen und Telefonnummern mit dem " "Programm 'DFA' verwalten, können Sie jetzt ein ARexx-Makro " "installieren, welches Ihnen als Wahlhilfe dienen kann.\n\n" "Möchten Sie das Makro installieren?" ) ) (set #askdfadialdirmsg (cat "in welche Schublade soll das Makro kopiert werden? (Es " "wird KEINE neue Schublade angelegt!)" ) ) (set #askdfadialdirhelp (cat "Wählen Sie am besten die Schublade von DFA, in der " "sich auch andere ARexx-Makros befinden" ) ) (set #askdeveloper (cat "Wenn Sie Applikationen für DragonDaemon programmieren möchten, " "können Sie die dafür notwendigen Informationen umkopieren. Für " "ARexx- und Blitz- und C-Programmierer sind Beispiele enthalten\n\n" "Möchten Sie die Entwicklerinfos installieren?" ) ) (set #askdeveloperdirmsg "Wo soll die Entwickler-Schublade angelegt werden?") (set #askdeveloperdirhelp (cat "Die Entwicklerinfos beinhalten Informationen zu ARexx-Port " "und Exec-Messageport sowie Beispiele in ARexx, BlitzBASIC und C. " ) ) (set #error_dtinstall1 (cat "\nAnscheinend haben Sie die falsche Schublade ausgewählt. " "Starten Sie die Installation daher erneut.\n\n" "Falls Sie 'DragonTools' noch nicht installiert haben, sollten Sie " "dies jetzt nachholen" ) ) (set #error_dtinstall2 (cat "\nAnscheinend haben Sie das Programm 'DragonTools' noch " "nicht konfiguriert (Prefs-Datei fehlt).\n\n" "Starten Sie bitte erst DragonTools, setzen Sie die " "Programmeinstellungen und speichern Sie diese. Danach " "können Sie diese Installation erneut starten." ) ) (set #helpwbstartup (cat "Da Sie ein Autostart-Icon installiert haben, ist es nicht " "notwendig, daß Sie das Programm 'DragonDaemon' in der 'WBStartup' - Schublade " "belassen. Entfernen Sie es bitte." ) ) (set #askwbstartup (cat "Möchten Sie, daß 'DragonDaemon' bei jedem Rechnerstart " "automatisch aktiviert wird ? \n\n" "Wenn ja, wird im nächsten Schritt ein Projekt-Icon " "in den \"WBStartup\"-Ordner Ihrer Boot-Disk kopiert\n\n" "Wenn nein, bleibt ein eventuell vorhandenes Start-Icon erhalten." ) ) (set #aiconfail1 (cat "Es existiert keine 'WBStartup'-Schublade auf Ihrer SYS- " "Partition. Wenn Sie 'DragonDaemon' bei jedem Rechnerstart " "automatisch in Ihren Rechner laden möchten, wird diese unbedingt " "benötigt.\n\nSoll eine Schublade erzeugt werden?" ) ) (set #aiconfail2 (cat "Leider existiert keine 'WBStartup'-Schublade auf Ihrer SYS- " "Partition. Automatischer Programmstart ist daher leider nicht möglich." ) ) (set #askuserstartup (cat "Wenn Sie die Programme 'Dial' und 'ShowCounter' auch in " "einem Shellfenster starten möchten, können Sie jetzt einen " "Suchpfad zu den Programmen eintragen lassen. Dazu wird Ihre " "'User-Startup' verändert.\n\n" "Soll die User-Startup geändert werden?" ) ) (set #askenv (cat "Wenn Sie für das Programm 'Dial' im Shell-Modus einen bevorzugten Port " "(a/b-Anschluss der DataBox) verwenden möchten, können Sie " "dies durch setzen der ENV-Variable 'DEFDIALPORT' auf die " "entsprechende Port-Nummer (1 bis 3) erreichen\n\n" "Möchten Sie jetzt schon einen bevorzugten Port für " "das Programm 'Dial' angeben?" ) ) (set #helpenv (cat "Mit dem Programm 'Dial' wird das Wählmodul von DragonDaemon " "aktiviert. Von Workbench gestartet, können Telefonnummer und " "Port über Tooltypes übergeben werden. Wenn Sie es in einem " "Shellfenster starten und immer ein bestimmtes Telefon nutzen, " "sollten Sie den zugehörigen Port der DataBox als Vorgabe " "setzen. Sie ersparen sich damit die Angabe bzw. die Auswahl " "eines Ports" ) ) (set #nodaemon (cat "Aus irgend einem Grund wurde das Programm \"DragonDaemon\" nicht " "umkopiert. Wiederholen Sie bitte den Installationsvorgang" ) ) ; ************************************************************************* ; Beginn der Installation ; ************************************************************************* (complete 0) (welcome) ; ************************************************************************* ; DragonTools-Pfad ermitteln, falls Icon in SYS:WBStart vorhanden ist ; ************************************************************************* (if (exists (tackon #aicondest "DragonDaemonStart.info")) ( (iconinfo (dest (tackon #aicondest "DragonDaemonStart")) (getdefaulttool "testdir") ) (set @default-dest (pathonly testdir)) ) ) ; ************************************************************************* ; Zielverzeichnis auswählen lassen ; ************************************************************************* (set #destname (askdir (prompt #askprgdirmsg) (help #askprgdirhelp) (default @default-dest) ) ) (if (= #destname "") ( (abort "Fehler bei Auswahl!") ) ) (set #icon_toolentry (tackon #destname "DragonDaemon")) (set #dokdest (tackon #destname "Docs")) ; ************************************************************************* ; DragonTools-Installation prüfen ; ************************************************************************* (if (exists (tackon #destname "DragonTools.wizard") (noreq)) ( (if (not (exists (tackon #destname "DragonTools.Prefs") (noreq))) (abort #error_dtinstall2) ) ) ( (abort #error_dtinstall1) ) ) (complete 5) ; ************************************************************************* ; Icon-Typ auswählen ; ************************************************************************* (set #icontyp (askchoice (prompt "Wählen Sie einen Icon-Typ aus") (help "") (choices "Standard" "MagicWB") ) ) (if (= #icontyp 0) ( (set #iconsource #progssource) ) ( (set #iconsource "MWBIcons") ) ) (complete 10) ; ************************************************************************* ; Falls vorhanden, alten DragonDaemon beenden ; ************************************************************************* (if (exists "ExitDaemon") ( (run "ExitDaemon") (if (exists "RAM:OldDaemon_Removed") ( (message "Ihre aktive Version von DragonDaemon wurde soeben aus dem Speicher entfernt. Nach erfolgreicher Installation müssen Sie \"DragonDaemon\" neu starten.") (delete "RAM:OldDaemon_Removed") ) ) ) ( (message "Eine eventuell aktive Version von DragonDaemon müssen Sie zuerst beenden, bevor Sie weitermachen! Benutzen Sie dazu das Programm \"Exchange\" der Workbench.") ) ) ; ************************************************************************* ; Kopieren der Programme ; ************************************************************************* (if (exists #progssource (noreq)) ( (copyfiles (prompt "Programme kopieren") (source #progssource) (dest #destname) (help "") (pattern "~(#?.info)") (confirm "EXPERT") ) ) ) (complete 40) ; ************************************************************************* ; Kopieren des Programmes AppMenuDial ; ************************************************************************* (if (exists "SYS:WBStartup/AppMenuDial") ( (copyfiles (prompt "AppMenuDial in WBStartup kopieren") (source "Programme/AppMenuDial") (dest "SYS:WBStartup") (help "") (confirm "EXPERT") ) ) ) (complete 45) ; ************************************************************************* ; Kopieren der Daten, sofern sie nicht existieren ; ************************************************************************* (if (not(exists (tackon #destname "PhoneList.TXT") (noreq))) ( (copyfiles (prompt "Telefonliste kopieren") (source "Daten/Phonelist.TXT") (dest #destname) (help "") (confirm "EXPERT") ) ) ) (complete 47) (if (not(exists (tackon #destname "Provider.DAT") (noreq))) ( (copyfiles (prompt "Providerliste kopieren") (source "Daten/Provider.DAT") (dest #destname) (help "") (confirm "EXPERT") ) ) ) (complete 50) ; ************************************************************************* ; Kopieren der Anleitungen ; ************************************************************************* (if (exists #doksource) ( (copyfiles (prompt "Anleitungen kopieren") (source #doksource) (dest #dokdest) (infos) (help "") (all) (confirm "EXPERT") ) ) ) (complete 55) ; ************************************************************************* ; Installieren des Autostart-Icons ; ************************************************************************* (if (exists #aiconsource) ( (if (not (exists #aicondest)) (if (askbool (prompt #aiconfail1) (help "") (default 0) (choices "Ja" "Nein")) (makedir #aicondest (infos)) ) ) (if (exists #aicondest) ( (if (exists #icon_toolentry) ( (if ((askbool (prompt #askwbstartup) (help "") (default 0) (choices "Ja" "Nein"))) ( (copyfiles (prompt "Icon kopieren") (source #aiconsource) (dest #aicondest) (newname (cat #aiconname ".info"))) ; ************************************************************************* ; Default-Tool und Tooltypes (Zukunft) eintragen ; ************************************************************************* (set #newaiconname (tackon #aicondest #aiconname)) (if (exists (cat #newaiconname ".info")) ( (Tooltype (dest #newaiconname) (Setdefaulttool #icon_toolentry)) (if (exists "SYS:WBStartup/DragonDaemon") (message #helpwbstartup) ) ) ) ) ) ) ) ) ( (message #aiconfail2) ) ) ) ) (complete 60) ; ************************************************************************* ; ADM-Wahlhilfe installieren ; ************************************************************************* (if (exists #admmakrosrc) ( (if (askbool (prompt #askadmmakros) (help "") (default 0) (choices "Ja" "Nein")) ( (set makrodir (askdir (prompt #askadmdialdirmsg) (help #askadmdialdirhelp) (default @default-dest) ) ) (if (<> makrodir "") ( (copyfiles (prompt "ADM-Makros kopieren") (source #admmakrosrc) (dest makrodir) (pattern "#?.adm") (help "") (confirm "EXPERT") ) ) ) ) ) ) ) (complete 65) ; ************************************************************************* ; DFA-Wahlhilfe installieren ; ************************************************************************* (if (exists #dfamakrosrc) ( (if (askbool (prompt #askdfamakros) (help "") (default 0) (choices "Ja" "Nein")) ( (set makrodir (askdir (prompt #askdfadialdirmsg) (help #askdfadialdirhelp) (default @default-dest) ) ) (if (<> makrodir "") ( (copyfiles (prompt "DFA-Makro kopieren") (source #dfamakrosrc) (dest makrodir) (help "") (confirm "EXPERT") ) (copyfiles (prompt "Anleitung zum DFA-Makro") (source "DFA/DragonDial.readme") (dest #dokdest) (newname "DFA-DragonDial.TXT") (help "") (infos) (confirm "EXPERT") ) ) ) ) ) ) ) (complete 70) ; ************************************************************************* ; Entwicklerinformationen kopieren ; ************************************************************************* (if (exists #developersource) ( (if (askbool (prompt #askdeveloper) (help "") (default 0) (choices "Ja" "Nein")) ( (set developerpath (askdir (prompt #askdeveloperdirmsg) (help #askdeveloperdirhelp) (default @default-dest) ) ) (if (<> developerpath "") ( (set developerdir (tackon developerpath "DD-Entwickler")) (makedir developerdir (infos)) (copyfiles (prompt "Entwicklerinfos kopieren") (source #developersource) (dest developerdir) (infos) (all) (help "") (confirm "EXPERT") ) ) ) ) ) ) ) (complete 80) ; ************************************************************************* ; Kopieren der Icons ; ************************************************************************* (working "Icons kopieren...") (run (cat "IconCopy " (tackon #iconsource "AppMenuDial") " " (tackon #destname "AppMenuDial") " UPDATE")) (run (cat "IconCopy " (tackon #iconsource "Dial") " " (tackon #destname "Dial") " UPDATE")) (run (cat "IconCopy " (tackon #iconsource "Dial_Project") " " (tackon #destname "Dial_Project") " UPDATE")) (run (cat "IconCopy " (tackon #iconsource "DragonDaemon") " " (tackon #destname "DragonDaemon") " UPDATE")) (run (cat "IconCopy " (tackon #iconsource "ProviderPrefs") " " (tackon #destname "ProviderPrefs") " UPDATE")) (run (cat "IconCopy " (tackon #iconsource "ShowCounter") " " (tackon #destname "ShowCounter") " UPDATE")) (run (cat "IconCopy " (tackon #iconsource "Docs") " " (tackon #destname "Docs") " UPDATE")) (if (exists "SYS:WBStartup/AppMenuDial") ( (run (cat "IconCopy " (tackon #iconsource "AppMenuDial") " " ("SYS:Wbstartup/AppMenuDial") " UPDATE")) ) ) (complete 85) ; ************************************************************************* ; Suchpfad in User-Startup einbinden ; ************************************************************************* (if (askbool (prompt #askuserstartup) (help "") (default 0) (choices "Ja" "Nein")) ( (set cmd (cat "Path "#destname" add")) (startup "DragonDaemon-Tools" (prompt (cat "Zeile '" cmd "'in User-Startup einfügen")) (command cmd) (help "") ) ) ) (complete 90) ; ************************************************************************* ; ENV-Variablen setzen (default dialport) ; ************************************************************************* (if (askbool (prompt #askenv) (help #helpenv) (default 0) (choices "Ja" "Nein")) ( (set result (askchoice (prompt "Bevorzugten Port auswählen") (help "") (default 0) (choices "1" "2" "3") ) ) (set defdialport (+ result 1)) (textfile (prompt "ENV-Variable in ENV anlegen") (help "") (dest "ENV:DEFDIALPORT") (append defdialport) ) (textfile (prompt "ENV-Variable in ENVARC anlegen") (help "") (dest "ENVARC:DEFDIALPORT") (append defdialport) ) ) ) (complete 95) ; ************************************************************************* ; Falls vorhanden, einen LiesMich-Text anzeigen ; ************************************************************************* (if (exists #liesmichtext) (run (cat "sys:utilities/Multiview " #liesmichtext)) ) ; ************************************************************************* ; Aktuelles Verzeichnis setzen ; ************************************************************************* (if (exists (tackon #destname "DragonDaemon")) ( (set @default-dest #destname) ) ( (message #nodaemon) (set @default-dest "") ) ) (complete 100) ; ************************************************************************* ; Ende der Installation ; *************************************************************************